package com.party.course.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.party.common.annotation.Excel;
import com.party.common.core.domain.BaseEntity;
import lombok.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.math.BigDecimal;

/**
 * 审批申请对象 approval_info
 *
 * @author ruoyi
 * @date 2025-05-29
 */
@Data
@TableName(value = "approval_info")
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class ApprovalInfo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /**
     * "申请类型 0:学管退课退款申请 1：提现申请  2：开通合伙人账户"
     */
    @Excel(name = "申请类型")
    private String businessType;

    /**
     * "业务标识"
     */
    @Excel(name = "业务标识")
    private String businessId;

    /**
     * "申请人标识"
     */
    @Excel(name = "申请人标识")
    private String appUserId;

    /**
     * "申请人姓名"
     */
    @Excel(name = "申请人姓名")
    private String appUserName;

    /**
     * "状态 0：待审批；1：通过；2：驳回"
     */
    @Excel(name = "状态")
    private String status;

    /**
     * "申请说明"
     */
    @Excel(name = "申请说明")
    private String explan;

    /**
     * "超级俱乐部能够开通的合伙人账户数量"
     */
    @Excel(name = "超级俱乐部能够开通的合伙人账户数量")
    private Integer clubUnitNum;

    /**
     * "审批备注"
     */
    @Excel(name = "审批备注")
    private String remark;

    /**
     * "审批人"
     */
    @Excel(name = "审批人")
    private String approver;

    /**
     * "审批人姓名"
     */
    @Excel(name = "审批人姓名")
    private String approverName;



    /**
     * "变动金额"
     */
    @Excel(name = "变动金额")
    @TableField(exist = false)
    private BigDecimal changeAmount;


    private BigDecimal amount;




    private String delFlag;

    @TableField(exist = false)
    private StudentInfo studentInfo;

}
